// 引入路由和storage工具函数
import { setStorage, getStorage, removeStorage } from '@/utils/tools'
import router from '@commonProject/router'
import store from '@commonProject/store'

let lastTime = new Date().getTime()
let currentTime = new Date().getTime()
let timeOut = 30 * 60 * 1000 //设置超时时间: 30分钟

window.onload = function () {
  window.document.onmousedown = function () {
    setStorage('lastTime', new Date().getTime())
  }
}

function checkTimeout() {
  currentTime = new Date().getTime() //更新当前时间
  lastTime = getStorage('lastTime')
  //判断是否超时
  // console.log('timeOut', timeOut)
  if (currentTime - lastTime > timeOut) {
    // 清除storage的数据(登陆信息和token)
    removeStorage('lastTime')
    // 跳到登陆页
    if (router.currentRoute.value.name == 'Login') return // 当前已经是登陆页时不做跳转
    store.dispatch('user/logout')
  }
}

export default function (t) {
  timeOut = t * 60 * 1000
  console.log('定时器 间隔30秒检测是否长时间未操作页面', timeOut)
  /* 定时器 间隔30秒检测是否长时间未操作页面 */
  window.setInterval(checkTimeout, 30 * 1000)
}
